package com.fesine.ssh.service;

import com.fesine.ssh.model.Category;

import java.util.List;

/**
 *
 * Created by Fesine on 2016/2/21.
 */
public interface CategoryService {

    /**
     * 添加商品分类
     *
     * @param entity
     * @return
     */
    String addCategory(Category entity);

    String addChildCategory(int parent,Category entity);

    String addTopCategory(Category entity);

    /**
     * 修改商品分类
     *
     * @param entity
     */
    void modify(Category entity);

    /**
     * 删除商品分类
     *
     * @param id
     */
    void delete(String id);

    /**
     * 根据分类id递归删除分类
     * @param cateId
     */
    void deleteByCateId(int cateId);


    /**
     * 根据商品分类id查询商品分类信息
     *
     * @param cateId
     * @return
     */
    Category findByCateId(int cateId);

    /**
     * 根据父类id查询所有子类分类
     * @param pid
     * @return
     */
    List<Category> findByParent(int pid);

    /**
     * 根据商品分类id查询商品分类信息
     * 支持模糊查询
     *
     * @param cateName
     * @return
     */
    List<Category> findByCateName(String cateName);

    /**
     * 查找所有分类
     *
     * @return
     */
    List<Category> findAll();

    List<Category> findTopAll();

    /**
     * 根据实体条件查找所有分类
     *
     * @param Category
     * @return
     */
    List<Category> findByEntity(Category Category);

}
